3.6.9.10 dvfma-倍精度ベクトル積和演算の基本動作
code:文法
dvfma(u|d) <src_x> <src_y> <src_z> <dst_0> <dst_1>.. 定する。
uを指定した場合はPE0,PE1でxとyと掛け合わせたものを$ x* yの中間結果とし、PE2,PE3では$ x*yの中間結果を便宜的に 0 として、zとの加算を行う(以下効果においてoffset=0)。 dを指定した場合はPE2,PE3でxとyと掛け合わせたものを$ x*yの中間結果とし、PE0,PE1では$ x*yの中間結果を便宜的に 0 として、zとの加算を行う(以下効果においてoffset=2)。 第 1 入力の<src_x>、第 2 入力の<src_y>、および第 3 入力の<src_z>は読み出し元PEオペランドである。 <dst_0> [<dst_1>..]は書き込み先PEオペランドである。 演算結果は複数のPEメモリに同時に書き込むことができるが、以下効果では簡単のため単一の書き込み先としてdstを指定した例を示している。 code:効果.py
for cycle= 0:4
forall chip,l2b,l1b,mab
LongWord dst_data4 = {0, 0, 0, 0} for i= 0:2
forall pe